
const tools = {
  // 计算剩余时间
  calculateRemainingTime: (limit, now = new Date()) => {
    const d = +new Date(limit)
    const n = +new Date(now)
    const diff = (d - n) / 1000
    const day = parseInt(diff / 60 / 60 / 24)
    const hour = parseInt(diff / 60 / 60 % 24)
    const min = parseInt(diff / 60 % 60)
    const second = parseInt(diff % 60)
    return { day, hour, min, second }
  },
  // 格式化日期
  dateFormat: (fmt, d) => {
    const date = new Date(d)
    const opt = {
      "y+": date.getFullYear().toString(),        // 年
      "m+": (date.getMonth() + 1).toString(),     // 月
      "d+": date.getDate().toString(),            // 日
      "H+": date.getHours().toString(),           // 时
      "M+": date.getMinutes().toString(),         // 分
      "S+": date.getSeconds().toString()          // 秒
      // 有其他格式化字符需求可以继续添加，必须转化成字符串
    };
    for (let k in opt) {
      ret = new RegExp("(" + k + ")").exec(fmt);
      if (ret) {
        fmt = fmt.replace(ret[1], (ret[1].length == 1) ? (opt[k]) : (opt[k].padStart(ret[1].length, "0")))
      };
    };
    return fmt;
  }
}

module.exports = tools


